var t = require;
var e = module;
var o = exports;
Object.defineProperty(o, "__esModule", {value: !0});
var n = (function () {
    function t() {
        this.s = new Array();
    }
    return (
        (t.prototype.add = function (t) {
            -1 == this.s.indexOf(t) && this.s.push(t);
        }),
        (t.prototype.clear = function (t) {
            var e = this.s.indexOf(t);
            e > -1 && (this.s[e] = null);
        }),
        (t.prototype.clearAll = function () {
            this.s.length = 0;
        }),
        (t.prototype.step = function () {
            for (var t = 0, e = this.s; t < e.length; t++) {
                var o = e[t];
                o && o();
            }
            for (var n = this.s.length; n--; ) this.s[n] || this.s.splice(n, 1);
        }),
        t
    );
})();
o.default = n;
